Configuração da criptografia de conexões SNMP

Os programas de terceiros podem eventualmente acessar os dados enviados pelo SNMP ou substitui-los pelos próprios dados. Para garantir a segurança da transferência de dados pelo SNMP, recomenda-se configurar a criptografia de conexões SNMP.

Para configurar a criptografia de conexão SNMP:

  1. Adicione a seguinte linha ao arquivo /etc/snmp/snmpd.conf:

    view systemview included .1

  2. Receba um EngineID, necessário para processar as armadilhas de SNMP. Para fazer isso, execute o seguinte comando em cada servidor no cluster:

    snmpget -v2c -c<community name> 127.0.0.1 SNMP-FRAMEWORK-MIB::snmpEngineID.0 2>/dev/null | sed -ne 's/ //g; s/.*:/0x/p'

    Especifique o nome da comunidade usada em sua organização. Caso seja necessário, crie uma nova comunidade. Com o intuito de garantir a segurança da transferência de dados, não é recomendado usar a comunidade "pública" padrão.

    Antes de executar o comando, certifique-se de que o serviço snmpd esteja em execução.

  3. Configure o serviço snmpd em cada servidor no cluster. Para isso:
    1. Interrompa o serviço snmpd. Para isso, execute o seguinte comando:

      systemctl stop snmpd

    2. Crie um novo usuário. Para isso, execute o seguinte comando:

      net-snmp-create-v3-user -ro -a SHA -A <password> -x <password> -X AES <username>

    3. Adicione a seguinte string ao arquivo de configuração /etc/snmp/snmpd.conf:

      # accept KSMG statistics over unix socket

      master agentx

      agentXSocket unix:/var/run/agentx-master.socket

      agentXPerms 770 770 kluser klusers

      # accept incoming SNMP requests over UDP

      agentAddress udp:127.0.0.1:161

      rouser <username> priv .1.3.6.1

      # comment the following line if you don't need to forward SNMP traps over an SNMPv3 connection

      trapsess -e <EngineID> -v3 -l authPriv -u <username> -a SHA -A <password> -x AES -X <password> udp:<IP address>:162

      Para <endereço IP> , indique o endereço IP que será usado pelo serviço snmptrapd para aceitar as conexões de rede. Caso queira salvar as armadilhas SNMP localmente no servidor, digite 127.0.0.1.

    4. Adicione as seguintes strings ao arquivo de configuração /etc/snmp/snmp.conf:

      mibdirs +/opt/kaspersky/ksmg/share/snmp-mibs/

      mibs all

      Caso um arquivo de configuração snmp.conf não existir no diretório especificado, basta criá-lo.

    5. Inicie o serviço snmpd. Para isso, execute o seguinte comando:

      systemctl start snmpd

    6. Verifique a conexão SNMP. Para fazer isso, execute os seguintes comandos:

      snmpwalk -mALL -v3 -l authPriv -u <username> -a SHA -A <password> -x AES -X <password> udp:127.0.0.1:161 .1.3.6.1.4.1.23668

      snmpget -v3 -l authPriv -u <username> -a SHA -A <password> -x AES -X <password> udp:127.0.0.1:161 KSMG-PRODUCTINFO-STATISTICS::applicationName.0

  4. Configure o serviço snmptrapd no servidor em que deseja receber as armadilhas de SNMP. Para isso:
    1. Pare o serviço snmptrapd com o seguinte comando:

      systemctl stop snmptrapd

    2. Adicione a seguinte linha ao arquivo /var/lib/net-snmp/snmptrapd.conf:

      createUser -e <EngineID> <username> SHA "<password>" AES "<password>"

      Caso um arquivo de configuração snmptrapd.conf não exista no diretório especificado, basta criá-lo.

      As credenciais da conta de usuário (<username> e <password>) devem ser as mesmas para os serviços snmpd e snmptrapd.

    3. Adicione a seguinte string ao arquivo /etc/snmp/snmptrapd.conf:

      snmpTrapdAddr udp:<IP address>:162

      authUser log <username> priv

      disableAuthorization no

      Caso um arquivo de configuração snmptrapd.conf não exista no diretório especificado, basta criá-lo.

    4. Inicie o serviço snmptrapd. Para isso, execute o seguinte comando:

      systemctl start snmptrapd

      Certifique-se de que a senha indicada em texto simples no arquivo /var/lib/net-snmp/snmptrapd.conf foi substituída por uma sequência ofuscada de caracteres. Para fazer isso, pode ser necessário reiniciar o serviço snmptrapd várias vezes por meio do comando systemctl restart snmptrapd.

    5. Adicione o serviço snmptrapd para iniciar automaticamente. Para isso, execute o seguinte comando:

      systemctl enable snmptrapd

    6. Verifique a conexão SNMP executando o seguinte comando:

      snmptrap -e <EngineID> -v3 -l authPriv -u <username> -a SHA -A <password> -x AES -X <password> udp:<IP address>:162 0 KSMG-EVENTS-MIB::restartedBinary

      Certifique-se de que a seguinte string apareça no arquivo /var/log/messages:

      <date and time> <hostname> snmptrapd[7503]: <date and time> localhost [UDP: [127.0.0.1]:26325->[<IP address>]:162]:#012DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (0) 0:00:00.00#011SNMPv2-MIB::snmpTrapOID.0 = OID: KSMG-EVENTS-MIB::restartedBinary

    Para <endereço IP> , indique o endereço IP que será usado pelo serviço snmptrapd para aceitar as conexões de rede. Caso queira salvar as armadilhas SNMP localmente no servidor, digite 127.0.0.1.

A criptografia das conexões SNMP agora foi configurada.

Topo da página